我有一个用C#编写的加密/解密算法-我需要能够在PHP中生成相同的加密,以便我可以通过HTTP发送加密文本,以便在C#端解密。这是用于加密的C#代码。this.m_plainText=string.Empty;this.m_passPhrase="passpharse";this.m_saltValue="saltvalue";this.m_hashAlgorithm="SHA1";this.m_passwordIterations=2;this.m_initVector="1a2b3c4d5e6f7g8h";this.m_keySize=256;publicstringEncrypt
我正在寻找C#中的对称加密/解密例程。我知道之前有几个关于这个话题的问题,但大多数答案似乎都是关于加密的原理,而不是给出实际的代码。更新:我真的很想看到一些代码,而不仅仅是链接。非常感谢! 最佳答案 查看thispage底部的示例代码.复制粘贴到这里intRfc2898KeygenIterations=100;intAesKeySizeInBits=128;StringPassword="VerySecret!";byte[]Salt=newbyte[16];System.Randomrnd=newSystem.Random();r
我正在开发一个Intranet应用程序(C#),它使用一些我们希望保密的数据(网络服务器的本地数据)。此数据使用旧数据存储库加密(AES)。我们无法完全阻止对机器的物理访问。显然,我们永远不会在这里拥有完美的安全性。但是,我们希望尽可能地防止任何人未经授权访问数据。问题是如何最好地存储key。基于某些特定于机器的ID对其进行加密是一种选择,但该信息对于在机器上运行诊断工具的任何人来说都很容易获得。在应用程序中对其进行编码是一种选择(它是一次性应用程序)。但是,.NET程序集很容易反编译。那么,最好是混淆它,使用加密启动器,编译它吗?或者是否有我遗漏的选项?我们很清楚,我知道如果有人下定
我需要加密和解密大文件(~1GB)。我尝试使用这个例子:http://www.codeproject.com/Articles/769741/Csharp-AES-bits-Encryption-Library-with-Salt但我的问题是因为文件非常大,我遇到了outOfMemory异常。所以我需要用文件流替换内存流,我只是不知道该怎么做......(添加我的代码:)privatestaticvoidAES_Encrypt(stringsrcFile,stringencryptedFile,byte[]passwordBytes){//Setyoursalthere,changei
我有一个高级目标,即创建一个static实用程序类来封装我的.NET应用程序的加密。在内部,我想尽量减少不必要的对象创建。我的问题是:在.NETFramework中实现对称加密的类的线程安全性是什么?特别是System.Security.Cryptography.RijndaelManaged和ICryptoTransform它生成的类型。例如,在我的类构造函数中,我可以简单地按照以下几行做一些事情吗?staticMyUtility(){using(RijndaelManagedrm=newRijndaelManaged()){MyUtility.EncryptorTransform=
我不知道我错在哪里。当我构建它时,它会搜索DLL的默认路径以进行登录。尽管我指定了路径。我已创建.snk文件并将其存储在与DLL相同的位置。//AssemblyinfofileforerrorcollectionusingSystem.Reflection;usingSystem.Runtime.CompilerServices;usingSystem.Runtime.InteropServices;//GeneralInformationaboutanassemblyiscontrolledthroughthefollowing//setofattributes.Changethes
我一直在尝试使用以下代码在PowerShell中使用HMAC-SHA1加密类似AmazonS3的授权key:$str="PUT\n\napplication/x-zip-compressed\nThu,09Feb201708:59:43GMT\n/test-bucket/test-key"$secret="c334da95a6734ff4a04abd99efca450f"$sha=[System.Security.Cryptography.KeyedHashAlgorithm]::Create("HMACSHA1")$sha.Key=[System.Text.Encoding]::UT
基本上我想使用System.Security.Cryptography.AesManaged(或者更好的类,如果你认为有一个?)使用给定的对称key获取一个字节数组并创建另一个加密的字节数组(我假设我需要一个吗?)。我还需要逆向这个过程的方法。这样做的目的是让我可以加密存储的密码。我假设有一种简单的方法可以做到这一点?谢谢 最佳答案 编辑:你真的应该在每次加密时生成一个随机IV,这与我下面的古老代码不同:这是我最后所做的,灵感来自(旧版本的)迈克尔的回答:privatestringEncrypt(stringinput){retur
(这是一个在stackoverflow.com中被问到的重复问题。我已经阅读了答案。我已经尝试了这些解决方案,但这并没有解决我的问题。我将解释我的问题是什么我做了什么)。这是我的问题:我的应用程序使用了System.Data.SQLite.DLL。我引用了它,在我的电脑上运行正常,但在另一台电脑上运行失败。这是错误消息:System.IO.FileLoadException:Couldnotloadfileorassembly'System.Data.SQLite,Version=1.0.88.0,Culture=neutral,PublicKeyToken=db937bc2d44ff
我们如何在.NetCore类库中使用Rijndael加密?(不是.NetFramework类库)我们需要创建一个共享的.NetCore库以用于多个项目,并且需要实现在项目中使用相同的Rijndael加密的加密和解密方法。我们目前正在使用:VS企业2015c#.Net核心类库.NETStandard,Version=v1.6引用似乎.NetCore1.0版本中缺少Rijndael和AES的实现……它似乎只包含基类。我们如何将Rijndael或AES加密的.NetCore实现添加为对新.NetCore类库项目的引用?下面是适用于.NetFramework4.5.2的Encrypt方法:pu